package com.zb.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.zb.entity.ZjNetworkWithdrawWithFeeEmpRoot;
import com.zb.vo.NetworkWithdrawWithFeeEmpRootUpdateVo;

import java.util.List;

/**
 * <p>
 * 网点提现与费用人员权限表 服务类
 * </p>
 *
 * @author WEN
 * @since 2024-06-23
 */
public interface ZjNetworkWithdrawWithFeeEmpRootService extends IService<ZjNetworkWithdrawWithFeeEmpRoot> {

    /**
     * 保存提现与费用人员权限
     * @param custAccId 商家ID
     * @param networkId 服务商ID
     * @param withdrawEmpRootVos 允许提现人员ID，团队负责人为-1
     * @param selectFeeEmpRootVos 允许查询费用的人员ID，团队负责人为-1
     */
    void save(Long custAccId, Long networkId, List<Long> withdrawEmpRootVos, List<Long> selectFeeEmpRootVos);

    /**
     * 保存提现与费用人员权限
     * @param custAccId 商家ID
     * @param type 类型：1-提现，2-费用
     * @param withdrawEmpRootVo
     */
    void save(Long custAccId, Integer type, NetworkWithdrawWithFeeEmpRootUpdateVo withdrawEmpRootVo);

    /**
     * 根据服务商ID删除
     * @param networkId 服务商ID
     */
    void deleteByNetworkId(Long networkId);


    /**
     * 根据服务商ID获取提现与查询费用人员权限
     * @param networkId 服务商ID
     * @return
     */
    List<ZjNetworkWithdrawWithFeeEmpRoot> getByNetworkId(Long networkId);

    /**
     * 根据服务商ID获取提现与查询费用人员权限
     * @param networkId 服务商ID
     * @param type 类型：1-提现，2-费用
     * @return
     */
    List<ZjNetworkWithdrawWithFeeEmpRoot> getByNetworkId(Long networkId, Integer type);



}
